feat(gitlab): add GitLab API v4 client with typed responses#7120
feat(gitlab): add GitLab API v4 client with typed responses#7120
Conversation
Introduce the GitLab integration Django app with a typed API client for GitLab v4. This is the first PR in a stacked series splitting the GitLab integration (#7028) into reviewable increments. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Code review is billed via overage credits. To resume reviews, an organization admin can raise the monthly limit at claude.ai/admin-settings/claude-code.
Once credits are available, reopen this pull request to trigger a review.
|
You have used all of your free Bugbot PR reviews. To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial. |
|
The latest updates on your projects. Learn more about Vercel for GitHub. 3 Skipped Deployments
|
for more information, see https://pre-commit.ci
Docker builds report
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7120 +/- ##
==========================================
+ Coverage 98.33% 98.35% +0.01%
==========================================
Files 1337 1342 +5
Lines 50012 50371 +359
==========================================
+ Hits 49180 49541 +361
+ Misses 832 830 -2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-16)Details
Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
|
Add type annotations and type: ignore comments for PaginatedResponse union type access in test assertions, IssueQueryParams dynamic kwargs, and responses.calls union attribute access. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
for more information, see https://pre-commit.ci
Cover the __post_init__ validation branches for page and page_size to reach 100% diff coverage. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Introduce the GitLab integration Django app scaffold and a typed API v4 client. This is the first PR in a stacked series splitting #7028 into reviewable increments, addressing review feedback from @khvn26, @emyller, and @Zaimwa9.
Changes
responsesheader validation and parametrised casesContributes to #7028
Review effort: 2/5
Review feedback addressed from #7028
dict[str, Any](khvn26: "Can we generate response types from GitLab's OpenAPI schema?")responsesheader validation instead of separatebuild_request_headerstest (khvn26: "I'd rather the responses mocks validate expected headers")# type: ignore— mypy strict cleanLiteraltypes for resource endpoint parameters (khvn26: "Consider making this a Literal")_(_build_request_headers,_build_paginated_response)get_gitlab_resource_metadata,label_gitlab_resourcerequests.paramsdict instead of manual URL string concatenation🤖 Generated with Claude Code